/**
 * 
 */
package modelo.dao;

import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import modelo.HibernateUtil;
import modelo.pojos.Usuario;

/**
 * @author araujo
 *
 */
public class UsuarioDao {
	
	public Usuario load(Usuario usuario)
	{
		Usuario usu= null;
		Session s = HibernateUtil.getSessionFactory().getCurrentSession();
		List l = null;
		Transaction tx = s.getTransaction();
		try {
			tx.begin();
			usu=(Usuario)s.get(Usuario.class, usuario.getIdusuario());
			tx.commit();
		} catch (HibernateException he) {
			// TODO: handle exception
			he.printStackTrace();
		} finally {
			if (tx != null && tx.isActive()) {
				tx.rollback();
			}
		}
		return usu;
	}
	
	public Usuario validarUsuario(String usuario, String clave) {
        
		Usuario user = null;
        String sentencia = "from Usuario where namespace='" + usuario
                + "' and password='" + clave + "'";
        Session s = HibernateUtil.getSessionFactory().getCurrentSession();
        Transaction tx = s.getTransaction();
        try {
 
        	tx.begin();
            List<Usuario> listaUsuarios = (List<Usuario>) s.createQuery(sentencia).list();
            if (!listaUsuarios.isEmpty()) {
                user = listaUsuarios.get(0);
            } else {
                System.out.println("fracaso");
            }
 
        } catch (HibernateException he) {
			// TODO: handle exception
			he.printStackTrace();
		} finally {
			if (tx != null && tx.isActive()) {
				tx.rollback();
			}
		}
        return user;
    }
}
